/**
 * @description: 数据库初始化
 */
import { sequelize, useBelongsTo } from '@src/db'
import { ensureUserTable } from '@src/db/src/models/tools/create_table'

// 在这里开始检查数据库
await sequelize.authenticate().catch(err => {
  logger.error({
    code: 500,
    message: '数据库连接失败',
    data: err
  })
  process.exit(1)
})

logger.info({
  code: 200,
  message: '数据库连接成功',
  data: null
})

// 建立索引
useBelongsTo()

try {
  await ensureUserTable() // 自动创建 user 表（如果不存在）

  logger.info({
    code: 200,
    message: '初始化用户数据成功',
    data: null
  })
} catch (err) {
  logger.error({
    code: 500,
    message: '初始化用户数据失败',
    data: err
  })
  process.exit(1)
}
